One-time-programmable (“OTP”) memory elements are used in integrated circuits (“IC”) to provide non-volatile memory (“NVM”). Data in NVM are not lost when the IC is turned off. NVM allows an IC manufacturer to store lot number and security data on the IC, for example, and is useful in many other applications. Devices commonly known as fuses and anti-fuses are examples of OTP memory elements.
Other types of devices, such as flash memory, are also used to provide NVM in ICs; however, incorporating flash memory in a CMOS IC adds significant cost because extra processing steps are typically required. Many types of fuses exist, such as polysilicon fuses, metal fuses, contact fuses and via fuses, that are compatible with standard CMOS processing. However, high-density OTP memory is typically less reliable and has a lower programming yield than similarly sized flash memory. It is therefore desirable to provide OTP memory elements with better reliability and yield.